home *** CD-ROM | disk | FTP | other *** search
/ SGI Developer Toolbox 6.1 / SGI Developer Toolbox 6.1 - Disc 1.iso / toolbox / src / exampleCode / opengl / GLUT / progs / demos / walker / README < prev    next >
Text File  |  1996-11-11  |  5KB  |  120 lines

  1.  
  2. last updated 11/2/95
  3.  
  4. BACKGROUND
  5. ----------
  6.  
  7. Walker is a program I wrote with Kanishka Agarwal for our final project
  8. in our graphics class while we were at Harvey Mudd College.  I did most
  9. of the viewing, UI, and internals, while Kanishka concentrated on the model.
  10. We both came up with different .cset (curve set) files which make the guy
  11. do various things.  We spent dozens of minutes marching around the graphics
  12. lab trying to figure out just how people walk.  It was not a rigorous effort.
  13.  
  14. The program is for modeling human(oid) motion with forward kinetics.
  15. Forward kinetics basically means it does nothing cool for you with respect
  16. to how people really move, how articulated linkages move, or how gravity
  17. works.  You must specify the angular displacement of each joint at each
  18. point in time.  Also, our model only has 5 joints.  AND each joint only
  19. has one degree of freedom.
  20.  
  21. Okay, so enough about why it sucks; it is cool because you can put together
  22. some neat little animation sequences and it is fun to play with the curves
  23. and see immediate feedback.  Plus you can spin the guy around really fast
  24. while he's running: if that's not the sign of a quality graphics program
  25. I don't know what is.  And it illustrates how to do an app in GLUT with
  26. simultaneous 2D and 3D displays/interfaces.
  27.  
  28. INSTRUCTIONS
  29. ------------
  30.  
  31. Basically you've got two windows.  One shows the guy; one shows the rotation
  32. curves.  You know SGI demos: just click around with all three mouse buttons 
  33. on anything that looks interesting and you'll figure it out.
  34.  
  35. MORE INSTRUCTIONS
  36. -----------------
  37.  
  38. All I can think of to add are keyboard commands.  I have not used the program
  39. myself it several months and can't really remember how to use it.  But it
  40. was easy I remember that.  Here are keyboard commands you might have missed:
  41.  
  42. In 3D window, viewer keys:
  43.         0-9 and +/- to change speed when in FLYING MODE
  44.         (Careful use of flying mode and you can pretend the guy actually
  45.          is moving as he's flailing his legs.  Or, edit the program so it'll
  46.          take another curve which isn't a rotation but a displacement.
  47.          For BONUS POINTS: Have the program compute this based on the 
  48.          rotation curves of the three leg joints.)
  49. In 3D window, walker keys:
  50.         f, F: step forward 1, 5 time step(s)
  51.         b, B: step backward 1, 5 time step(s)
  52.         spacebar: step forward one time step
  53. In 2D (curves) window:
  54.         same as 3D window walker keys plus:
  55.         1-5: edit curve #1-5
  56.         d: stop edit curves
  57.  
  58. Remember, each of the three buttons in each window does something.  I think.
  59. There are pop-up menus, I know that much.
  60.  
  61. POINTERS
  62. --------
  63.  
  64. We researched a number of sources before writing this, but I think our main
  65. reference was this book:
  66.         Advanced Animation and Rendering Techniques - Theory and Practice
  67.         Alan Watt, Mark Watt
  68.         Addison-Wesley (ACM Press) 1992
  69. Whatever else we read we probably got from a citation in that book.
  70.  
  71. But hey if it's on paper it's probably out of date, right?  No, but 
  72. try these anyway:
  73.         http://www.cc.gatech.edu/gvu/animation/
  74.         http://robotics.stanford.edu/users/kuffner/human.html
  75.         http://market.net/literary/mkp/pages/1554/index.html
  76.  
  77. DIRECTORY LISTING
  78. -----------------
  79.   483 May 15 04:05 Makefile
  80.  
  81.   324 May 15 04:03 walker.h
  82. 28346 May 15 03:59 walker.c - most everything, callbacks for both windows
  83.                               (except AGV for the model window)
  84.  
  85. 17601 May 15 04:00 models.c - models, wireframe, solid rectangles, and 
  86.                               cylinders/spheres.  Colors could use a little
  87.                               work!  And you could plug in a totally
  88. different
  89.                               model and make that work too.
  90.  
  91.  3435 May 12 16:19 walkviewer.h
  92. 13095 May 12 16:19 walkviewer.c - basically AGV (a GLUT viewer)
  93.  
  94.   928 May 12 16:19 walking.cset - curves we did...
  95.   809 May 12 16:19 running.cset
  96.   762 May 12 16:19 bound.cset
  97.   978 May 12 16:19 moonwalk.cset
  98.  1177 May 12 16:19 dunk.cset
  99.  1236 May 12 16:19 reverse_dunk.cset
  100.   924 May 12 16:19 kick.cset
  101.   882 May 12 16:19 Impossible.cset
  102.   754 May 12 16:19 MrFlex.cset
  103.   767 May 12 16:19 Ouch.cset
  104.  
  105. AUTHORS
  106. -------
  107. Kanishka Agarwal - whereabouts unknown
  108.                    (to me anyway, but I could track him down if need be)
  109. Philip Winston - pwinston@hmc.edu
  110.                  http://www.cs.hmc.edu/~pwinston/
  111.                  Email me your .cset files! (unless they're worse than ours)
  112.                  Also email me if you modify the program substantially or
  113.                  play with it as a means of procrastination.  I'm just
  114.                  curious.
  115. Ran Libeskind-Hadas - hadas@cs.hmc.edu
  116.                       http://www.cs.hmc.edu/~hadas/
  117.                       (He didn't write any code, but he taught the class.
  118.                        Plus he's a cool guy.)
  119.  
  120.